import java.io.*;

/**
 * 使用改进的(JDK7之后)try,catch实现资源的自动关闭
 * 自定义资源类实现资源接口(JDK9之后)
 */
public class ByteBufferDemo {
    public static void main(String[] args) {
        try(//创建一个输入流和源文件链接
            InputStream is = new FileInputStream("C:\\panGod\\守F公民.[中英双字.1024分辨率].rmvb");
            //创建一个字节输出流和目标文件接通
            OutputStream os = new FileOutputStream("C:\\data\\test\\守F公民.[中英双字.1024分辨率].rmvb");

            //创建一个缓冲字节流接上字节流
            InputStream bis = new BufferedInputStream(is);
            //创建输出缓冲流对接上输出字节流
            OutputStream bos = new BufferedOutputStream(os);
        ) {
            //定义一个字节数组用来转移数据
            byte[] buffer = new byte[1024];
            int len;//记录读取长度
            while((len = bis.read(buffer))!=-1){
                bos.write(buffer,0,len);
            }

            System.out.println("复制完成");
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}